4c31705e523ac0fa3f1f76d977161e60b5e560c8,JsTestDriver/src/com/google/jstestdriver/idea/debug/JstdDebugProgramRunner.java,JstdDebugProgramRunner,startSession,#Project#RunContentDescriptor#ExecutionEnvironment#Executor#JstdRunConfiguration#,84

Before Change


    debugBrowserInfo.fixIfChrome(executionResult.getProcessHandler());

    final RemoteDebuggingFileFinder fileFinder = new JstdDebuggableFileFinderProvider(new File(runConfiguration.getRunSettings().getConfigFile())).provideFileFinder();
    return XDebuggerManager.getInstance(project).startSession(this, env, contentToReuse, new XDebugProcessStarter() {
      @NotNull
      public XDebugProcess start(@NotNull final XDebugSession session) {
        JSDebugProcess debugProcess = debugEngine.createDebugProcess(session, fileFinder, connection, url, executionResult);
        BrowserConnection browserConnection = debugProcess.getConnection();
        browserConnection.queueRequest(new Runnable() {
          @Override
          public void run() {
            resumeJstdClientRunning(executionResult.getProcessHandler());
          }
        });
        return debugProcess;
      }
    }).getRunContentDescriptor();
  }

  private static void resumeJstdClientRunning(@NotNull ProcessHandler processHandler) {

After Change


    debugBrowserInfo.fixIfChrome(executionResult.getProcessHandler());

    final RemoteDebuggingFileFinder fileFinder = new JstdDebuggableFileFinderProvider(new File(runConfiguration.getRunSettings().getConfigFile())).provideFileFinder();
    XDebugSession session = XDebuggerManager.getInstance(project).startSession(this, env, contentToReuse, new XDebugProcessStarter() {
      @NotNull
      public XDebugProcess start(@NotNull final XDebugSession session) {
        return debugEngine.createDebugProcess(session, fileFinder, connection, url, executionResult);
      }
    });

    // must be here, after all breakpoints were queued
    ((JSDebugProcess)session.getDebugProcess()).getConnection().queueRequest(new Runnable() {
      @Override
      public void run() {
        resumeJstdClientRunning(executionResult.getProcessHandler());
      }
    });
    return session.getRunContentDescriptor();
  }

  private static void resumeJstdClientRunning(@NotNull ProcessHandler processHandler) {